元分析高阶篇:中介模型分析—R metaSEM的运用
点亮小星星 科研路上我们一起前行!
01
写在前面
元分析因为能对于某个领域进行系统性的归纳,或解决研究中的不一致地方,高引用,往往受到编辑和期刊的喜爱。不难发现很多顶刊如JAP, JOM, Personnel Psychology, 经常会看到某个主题的元分析。然而,正因为其受欢迎,导致很多研究者趋之若鹜,也就造成出来结果往往良莠不齐,想要发表在好的刊物绝非易事。所以各类元分析的研究者,为了发好刊物,真是八仙过海,显各种手段,什么multilevel meta, network meta, meta-SEM 怎么复杂怎么搞。如果读近些年发表的元分析尤其管理学这一块,就会发现越来越多的看到使用元分析的路径分析。
举个例子 (Bilgili, Calderon, Allen, & Kedia, 2017)。从目前发的一些文章来看,利用metaSEM的手段检验两个变量之间不同的中介模型是目前比较流行的做法。如Zhang Yucheng 等人关于abusive supervision 检验了组织公平和压力对于结果变量的影响 (Zhang et al., 2019)。Porter 等人检验了expressive degree centrality 对于员工离职意愿的多个路径。
来源:Porter, Woo, Allen, & Keith, 2019
还有一些其它metaSEM 的例子……
看起来这些文章都发在十分不错的期刊上,然而由于其方法的复杂性,使得很多人望而却步。对很多人而言元分析就已经很麻烦了(编码,搜集文献工作量浩繁,加上写作往往耗时数年),再要是加上结构方程模型……真的是...其实零几年甚至更早就已经有人在做,但是方法确实非常复杂导致并不是十分普遍。然而,随着R的普及,用R的一个包metaSEM实现起来并不是那么困难(但也绝不简单),你需了解其基本步骤,读懂代码,把例子中的代码改变为你自己的研究,就可以完成。所以,这篇文章就带大家走入meta SEM,揭开这一方法的神秘面纱。并探讨元分析的样本量大小问题,power 如何用R计算,及publication bias 检测的trim and fill method演示。
02
实例演示R metaSEM
如果要找到相关的资料,cheung发表了很多篇相关文章,然而你也不知道读哪一篇,所以你想不如一次性的把他编的那本书meta-analysis A Structural Equation Modeling给读完拉倒。。。。
啃了五百多页的统计书,代码也反复用书中的例子试了很多遍,你觉得信心满满……然而你迫不及待的想要把他的代码应用到自己研究的时候就发现,第一步就会出错。发现数据总是不对。此时读了五百多页统计书就像是开了个玩笑。。。
所以,对于初级学者不建议读他的那本书。我在初级R元分析那篇文章中也 简单提了一下,那本书不太适合初级者,公式推导不说,第一步数据准备你就完全不知道如何着手。
在这里推荐另一本是他的学生写的,Meta-Analytic Structural Equation Modelling相对user-friendly, 比较通俗易懂,实操性更强一些。这篇文章我也以她提供的代码和数据进行演示。
2.1 数据准备
2.1.1 读取数据
用到的R package“metaSEM”也是cheung2014年开发的。
有三种数据读取方式:
readFullMat() , 读取相关系数矩阵。
readLowTriMat(),读取那种相关系数表
readStackVec()用于读取按照列排列的数据,也就是我们最为常见的coding的数据,如下图:
所以你如果用cheung书中的代码,因为他都是用 matrix, 我们自己数据上图在导入的第一步就会出错,或者没有错,但是你按照他的代码分析(数据格式不对情况),出来结果十之八九是错误的,可能R读取了错误的数据。
来源:Cheng, 2015, p.166
下面进入正式R分析:首先设置工作路径 (当然如果你还没有安装R、Rstudio,以及不知道如何设置工作路径,建议你先读下元分析基础篇,有十分详细的介绍),按照好需要的R包metaSEM。
install.packages("metaSEM")
library("metaSEM")
然后,读取数据,用Head简单查看数据,确保数据读入没有出错。
接下来,创建适合metaSEM分析的数据矩阵。如果对于这点有疑惑,简单说一句,其实结构方程模型在Mplus里也是有两种方式实现,一种是原始数据,另外一种就是相关系数矩阵。也就是根据一篇文章中的correlation Table, 就能进行SEM分析 (见下图简单的mediation model)。
所以其实原理一样。因为元分析我们只有correlation table, 所以我们只能选择第二种。
2.1.2 创建correlation matrix
根据自己研究的变量数目,设置对应地number variable;然后告诉R变量名,比如这里的就是positive emotion, negative emotion, engagement, achievement;然后读取第3-8列的数据,6列数据,创建4*4 相关系数矩阵,缺失值用na代替。
Diag = false, 表示diagnonal 1 are not given in the data. 因为,单个研究往往并非测量所有的变量,所有在创建相关矩阵的时候,就需要对缺失值进行,设定,以下就是将缺失值设定为NA.
2.2 Fixed effects analysis
简单看模型拟合指数CFI, TLI, 小于0.8, RMSEA指很高,模型拟合较差。然而异质性差异显著,所以这里进行subgroup 分析,根据社会地位social status, 高低,看是否能解释部分的异质性heterogeneity。
可以看出在高社会地位组,卡方值显著,模型拟合指数有了提高。但因为目前发表文章主要以random effect, 这里只是为了比较。下面进行random effect 模型分析。
2.3 Random effects analysis
随机效应模型Q检验显著,说明异质性显著。说明不同研究之间相关系数矩阵确实存在显著差异。接下来,就进入下一步正式的metaMediation 分析。要进行分析的是下面这个模型,先来看看:
来源:Jak, 2015
简单来说就是四个变量:2个自变量,1个中介变量,一个因变量。
2.4 Meta Mediation
里面的31,32,43代表上图的回归的系数,因为要指定路径,again这点要根据你自己的研究进行设定。0.1, start value,A matrix是设定模型;接下来S matrix 设定模型中的variance, and covariance.
2.4.1路径分析
LB = Likelihood;
模型拟合明显有了提高;得到了各个路径系数,然而,这只是回归,还没有中介分析
2.4.2 中介分析
运行得到结果,如下:
Ind表示中介,还有对应的回归系数。
中介演示完毕。
03
元分析中的样本量及效应量
3.1 样本量
来源:Field, A. P. (2001). Meta-analysis of correlation coefficients: A Monte Carlo comparison of fixed-and random-effects methods. Psychological Methods, 6, 161-180. http://dx.doi.org.proxy.library.uu.nl/10.1037/1082-989X.6.2.161
Field, A. P. 2005. Is the meta-analysis of correlation coefficients accurate when population correlations vary?
Psychological Methods, 10: 444-467.
3.2 效应量的计算
https://towardsdatascience.com/how-to-calculate-statistical-power-for-your-meta-analysis-e108ee586ae8
另外,当时介绍元分析的初级篇其实主要也是依据他的代码改编。对于实验研究的power 计算,可以通过R实现,但是对于问卷相关研究,目前我尚不了解。
因为一些挑剔的审稿人会问到这些……所以在这里提一下。毕竟我们的目标是top tier journal.
04
Trim and fill
关于publication bias,基础篇里只介绍了funnel plot,但是那个会被人argue,目前比较推荐的是trim and fill (Aguinis, Gottfredson, & Wright, 2011)。用R 的Metafor 就可以实现。
来源:Aguinis, H., Gottfredson, R. K., & Wright, T. A. (2011). Best-practice recommendations for estimating interaction effects using meta-analysis. Journal of Organizational Behavior, 32(8), 1033–1043. https://doi.org/10.1002/job.719
虽然有几种可以计算R0和L0比较推荐。
参考文献,引用这几篇:
不转发一下对得起作者读的几百页统计书,
上百篇元分析文献吗?。。。
(后台回复截图即可获得本文全部代码)
本文作者:李培凯
编辑:杨伟文
我们下期再见~
热门推荐:
...
更多热门文章等你发现!